package com.doitedu.core

import com.doitedu.utils.SparkUtil
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext}

/**
 * @Date: 22.6.28 
 * @Author: HANGGE
 * @qq: 598196583
 * @Tips: 学大数据 ,到多易教育
 * @Description:
 * 加hdfs上的文件数据  统计文件中各个单词出现的次数
 */
object C02LoadHdfs {

  def main(args: Array[String]): Unit = {
    val sc = SparkUtil.getSparkContext("hdfs_wc")
    // 加载HDFS上的数据
    val data = sc.textFile("hdfs://linux01:8020/spark/data/wc")
    // spark分析数据和使用本地scala集合分析数据一样
    data
      .flatMap(_.split("\\s+"))
      // 单词自己分组
      .groupBy(e=>e)
      // 处理每组数据  获取(单词,个数)
      .map(tp=>(tp._1, tp._2.size))
      // 按照单词个数 降序排列
      .sortBy(-_._2)
      .foreach(println)
    sc.stop()
  }
}
